﻿<?php

	// 角色编辑
	ob_clean();

	$id=!empty($_GET['id'])?$_GET['id']:'';

	if(!empty($_POST)){//用来检测是否做了提交操作

		//判断是否是ajax请求
		if (!empty($_SERVER['HTTP_X_REQUESTED_WITH'])&& $_POST['status']<0) {
			// //调用修改的封装语句
			$data[$_POST['filed']]=$_POST['val'];
			$where="id=".+$_POST['id'];
			echo $_rows=edit('role',$where,$data);die;
		}
		//审核状态修改
		//判断是否是ajax请求
		if (!empty($_SERVER['HTTP_X_REQUESTED_WITH'])) {
		//调用修改的封装语句
			$data=$_POST;
			$where="id=".+$_POST['id'];
			echo $_rows=edit('role',$where,$data);die;
		}

		// 设置数据库传输编码 mysqli_query(数据库连接成功的连接对象，数据库操作sql语句)
		mysqli_query($link,'set names utf8');

		//调用编辑的封装：修改
		$_POST['power']=implode(',',$_POST['power']);
		$where="id=".+$id;
		$_rows=edit('role',$where,$_POST);
		// echo $_rows;die;
		if ($_rows>0) {
				echo '<script>alert("角色编辑成功");location.href="index.php?c=role&a=list&admin=1";</script>';
		}else
		{
			echo '<script>alert("角色编辑失败");history.go(-1);</script>';
		}
	}

	//调用封装：查询当前编辑的角色
	$where="id=".+$id;
	$data=getSelectByOne('role',$where);
	//将角色拥有的权限id转成数组
	$data['power']=explode(',',$data['power']);
	// print_r($data);die;

	//先查询权限分类，将其显示在角色添加的权限列表下，方便添加的时候进行选择
	//先查询顶级分类数据
	$parent=getSelect('power','pid=0');
	//查询子级分类数据
	$child=getSelect('power','pid!=0');



//先查询权限分类，将其显示在角色添加的权限列表下，方便添加的时候进行选择
	//先查询顶级分类数据
	$parent=getSelect('power','pid=0');
	//查询子级分类数据
	$child=getSelect('power','pid!=0');


	//查询权限顶级分类：下拉列表-》错误
	//调用封装
	// $where="id=".+$data['power'];
	// $datas=getSelectByOne('power',$where);
	// $power=editPower($datas);
	// //判断是否是ajax发送的请求
	// if(!empty($_SERVER['HTTP_X_REQUESTED_WITH'])){
	// 	echo json_encode($power);die;
	// }
	//加载后台公共视图
	include (VIEW_PATH.$admin.'layout.html');
 ?>


<!--
 	1、先从地址栏获取要编辑的数据id,
 	2、然后再查询当前要编辑的角色,将角色拥有的权限id转成数组（方便做权限列表的默认选中），再把原来的替换掉
 	3、在编辑页面，通过绑定数据，用三元运算默认选中，在页面循环出所有的循环列表：先循环父级（条件pid=0：），再循环子级（条件：pid=!0）,把权限显示在父级下面（每循环一次，子级循环取到父级id,判断其跟子级的pid是否相等，相等则将子级输出显示）
 	4、选中效果：借助in_array(),首先先将每次循环到的父级id值（权限id）到用户所用的权限id数组进行搜索，如果搜索到了就返回选中的效果，否则返回空




  -->
